Input apparatus, control apparatus, control system, electronic apparatus, and control method

ABSTRACT

An input apparatus includes a detection section, a change section, and a transmission section. The detection section detects a movement amount of a user operation in an arbitrary direction. The change section changes a ratio of a first movement amount as a movement amount in a first operation direction corresponding to a first direction on a screen to a second movement amount as a movement amount in a second operation direction corresponding to a second direction on the screen different from the first direction, the first movement amount and the second movement amount corresponding to a detection value detected by the detection section. The transmission section transmits the first movement amount and the second movement amount whose ratio has been changed as scroll information of an image displayed on the screen.

CROSS REFERENCES TO RELATED APPLICATIONS

This application is a continuation of and claims the benefit under 35U.S.C. §120 of U.S. patent application Ser. No. 12/645,732, titled“INPUT APPARATUS, CONTROL APPARATUS, CONTROL SYSTEM, ELECTRONICAPPARATUS, AND CONTROL METHOD,” filed on Dec. 23, 2009, which claims thebenefit under 35 U.S.C. §119 of Japanese Patent Application 2008-331617,filed on Dec. 25, 2008, each of which is hereby incorporated byreference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an input apparatus for operating a GUI(Graphical User Interface), a control apparatus for controlling the GUIin accordance with information transmitted from the input apparatus, acontrol system including those apparatuses, an electronic apparatus, anda control method.

2. Description of the Related Art

Pointing devices, particularly a mouse and a touchpad, are used ascontrollers for GUIs widely used in PCs (Personal Computers). Not justas HIs (Human Interfaces) of PCs of the related art, the GUIs are nowstarting to be used as interfaces for AV equipment and game machinesused in living rooms etc. with, for example, televisions as image media.Various pointing devices that a user is capable of operating3-dimensionally are proposed as controllers for the GUIs of this type(see, for example, Japanese Patent Application Laid-open No. 2001-56743(paragraphs (0030) and (0031), FIG. 3; hereinafter, referred to asPatent Document 1) and Japanese Examined Patent Publication No. Hei6-7371 (P. 3, 11.18-20 on left-hand column; hereinafter, referred to asPatent Document 2)).

Patent Document 1 discloses an input apparatus including angularvelocity gyroscopes of two axes, that is, two angular velocity sensors.When a user holds the input apparatus in hand and swings it verticallyand laterally, for example, the angular velocity sensors detect angularvelocities about two orthogonal axes, and a signal as positionalinformation of a cursor or the like displayed by a display means isgenerated in accordance with the angular velocities. The signal istransmitted to a control apparatus, and the control apparatus controlsdisplay so that the cursor moves on a screen in response to the signal.

Patent Document 2 discloses an input apparatus (space mouse) includingthree acceleration sensors (of three axes) and three angular velocitysensors (of three axes) (gyro).

SUMMARY OF THE INVENTION

With the input apparatuses disclosed in Patent Documents 1 and 2, acursor is moved on a screen by operating the input apparatus3-dimensionally. In other words, those input apparatuses are mainly usedfor moving a cursor.

Incidentally, it is also possible to structure an input apparatus, acontrol apparatus, and the like so that an image displayed on a screenis scrolled when the input apparatus is operated 3-dimensionally. Inthis case, the image displayed on the screen is scrolled in accordancewith a 3-dimensional operation of the input apparatus.

In this case, however, since the input apparatus is operated in spacewithout any guide, there is a problem that a scroll direction of theimage on the screen is not settled if a movement of the input apparatusis converted into scroll as it is, thus leading to a poor operationalfeeling. For example, even when a user is meaning to move the inputapparatus vertically in space, the input apparatus also moveshorizontally against a will of the user. As a result, the inputapparatus also detects a movement in the horizontal direction inaddition to the movement in the vertical direction. If the movement ofthe input apparatus is converted into scroll as it is in this case, theimage on the screen is scrolled in a direction unintended by the user,thus resulting in a problem of a poor operational feeling.

In view of the circumstances as described above, there is a need for aninput apparatus, a control apparatus, a control system, an electronicapparatus, and a control method that are capable of improving anoperational feeling in scrolling an image displayed on a screen.

According to an embodiment of the present invention, there is providedan input apparatus including a detection means, a change means, and atransmission means.

The detection means detects a movement amount of a user operation in anarbitrary direction.

The change means changes a ratio of a first movement amount as amovement amount in a first operation direction corresponding to a firstdirection on a screen to a second movement amount as a movement amountin a second operation direction corresponding to a second direction onthe screen different from the first direction, the first movement amountand the second movement amount corresponding to a detection valuedetected by the detection means.

The transmission means transmits the first movement amount and thesecond movement amount whose ratio has been changed as scrollinformation of an image displayed on the screen.

In the embodiment of the present invention, since the ratio of the firstmovement amount to the second movement amount is changed, a scrolldirection of the image can be biased in directions such as ahorizontal-axis direction and a vertical-axis direction on the screen.As a result, an image can be prevented from being scrolled in adirection unintended by a user on the screen, with the result that anoperational feeling for the user in scrolling an image can be improved.

The input apparatus may further include a judgment means.

The judgment means judges a direction of the user operation based on thedetected detection value.

In this case, the change means may change the ratio of the firstmovement amount to the second movement amount in accordance with thejudged direction of the user operation.

With this structure, the scroll direction of the image can be biasedappropriately in accordance with a direction of the user operation.

In the input apparatus, the change means may change the ratio of thefirst movement amount to the second movement amount so that a scrolldirection of the image is biased in at least the first direction on thescreen and the second direction on the screen.

Since the scroll direction of the image can be biased in the firstdirection and the second direction on the screen in the embodiment ofthe present invention, an operational feeling in scrolling an image canbe additionally improved.

In the input apparatus, the change means may change the ratio so that,when the judged direction of the user operation is within a first anglerange from the first operation direction, the scroll direction is biasedin the first direction, and change the ratio so that, when the judgeddirection of the user operation is within a second angle range from thesecond operation direction, the scroll direction is biased in the seconddirection.

Assuming that, for example, the first angle range is ±45 degrees fromthe first operation direction and the second angle range is ±45 degreesfrom the second operation direction, if a direction of the useroperation is within ±45 degrees from the first operation direction, thescroll direction can be biased in the first direction on the screen. Onthe other hand, if the direction of the user operation is within ±45degrees from the second operation direction, the scroll direction can bebiased in the second direction on the screen.

The input apparatus may further include an angle range control means.

The angle range control means variably controls the first angle rangeand the second angle range.

In the input apparatus, the angle range control means may variablycontrol the first angle range and the second angle range in accordancewith the direction of the user operation.

With this structure, the first angle range and the second angle rangecan be changed appropriately in accordance with a direction of the useroperation.

In the input apparatus, the angle range control means may control thefirst angle range and the second angle range so that the first anglerange is widened when the direction of the user operation is within afirst modified angle range from the first operation direction and thesecond angle range is widened when the direction of the user operationis within a second modified angle range from the second operationdirection.

With this structure, when an input operation is made in a directionbiased in the first operation direction corresponding to the firstdirection on the screen (direction within first modified angle range),an image is easily scrolled in the first direction on the screen,whereas it becomes difficult to scroll the image in the second directionon the screen. On the other hand, when an input operation is made in adirection biased in the second operation direction corresponding to thesecond direction on the screen (direction within second modified anglerange), an image is easily scrolled in the second direction on thescreen, whereas it becomes difficult to scroll the image in the firstdirection on the screen. As described above, in the embodiment of thepresent invention, since the first angle range and the second anglerange can be changed appropriately in accordance with a direction of theuser operation, an operational feeling for the user in scrolling animage can be additionally improved.

In the input apparatus, the second angle range may be wider than thefirst angle range.

With this structure, when an input operation is made in an obliquedirection with respect to the first operation direction and the secondoperation direction (e.g., direction at angle of 45 degrees from secondoperation direction), scroll in the second direction is prioritized overthe first direction. As a result, an operational feeling in scrolling animage that is long in the second direction on the screen as describedabove, for example, can be improved.

In the input apparatus, the change means may change the ratio of thefirst movement amount to the second movement amount so that the scrolldirection of the image is restricted to at least the first direction onthe screen and the second direction on the screen.

In the input apparatus, the change means may change the ratio of thefirst movement amount to the second movement amount so that the scrolldirection of the image is restricted to directions that respectivelyform predetermined angles with respect to the first direction on thescreen and the second direction on the screen.

In the input apparatus, the detection means may be a sensor that detectsthe user operation in space.

According to an embodiment of the present invention, there is provided acontrol apparatus controlling display of scroll of an image displayed ona screen in accordance with information transmitted from an inputapparatus including a detection means for detecting a movement amount ofa user operation in an arbitrary direction and a transmission means fortransmitting the information on a related value related to a detectionvalue detected by the detection means, the control apparatus including areception means, a change means, and a display control means.

The reception means receives the information.

The change means changes a ratio of a first movement amount as amovement amount in a first operation direction corresponding to a firstdirection on the screen to a second movement amount as a movement amountin a second operation direction corresponding to a second direction onthe screen different from the first direction, the first movement amountand the second movement amount corresponding to the detected detectionvalue.

The display control means controls the display on the screen so that theimage displayed on the screen is scrolled in accordance with the firstmovement amount and the second movement amount whose ratio has beenchanged.

The “related value related to a detection value” may be a detectionvalue itself or an operational value calculated based on the detectionvalue.

In the embodiment of the present invention, since the ratio of the firstmovement amount to the second movement amount is changed, a scrolldirection of the image can be biased in directions including the firstdirection and the second direction on the screen. As a result, an imagecan be prevented from being scrolled in a direction unintended by theuser on the screen, with the result that an operational feeling for theuser in scrolling an image can be improved.

According to an embodiment of the present invention, there is provided acontrol system including an input apparatus and a control apparatus.

The input apparatus includes a detection means, a change means, and atransmission means.

The detection means detects a movement amount of a user operation in anarbitrary direction.

The change means changes a ratio of a first movement amount as amovement amount in a first operation direction corresponding to a firstdirection on a screen to a second movement amount as a movement amountin a second operation direction corresponding to a second direction onthe screen different from the first direction, the first movement amountand the second movement amount corresponding to a detection valuedetected by the detection means.

The transmission means transmits the first movement amount and thesecond movement amount whose ratio has been changed as scrollinformation of an image displayed on the screen.

The control apparatus includes a reception means and a display controlmeans.

The reception means receives the scroll information.

The display control means controls display on the screen so that theimage displayed on the screen is scrolled in accordance with the firstmovement amount and the second movement amount whose ratio has beenchanged.

According to another embodiment of the present invention, there isprovided a control system including an input apparatus and a controlapparatus.

The input apparatus includes a detection means and a transmission means.

The detection means detects a movement amount of a user operation in anarbitrary direction.

The transmission means transmits information on a related value relatedto a detection value detected by the detection means.

The control apparatus includes a reception means, a change means, and adisplay control means.

The reception means receives the information.

The change means changes a ratio of a first movement amount as amovement amount in a first operation direction corresponding to a firstdirection on a screen to a second movement amount as a movement amountin a second operation direction corresponding to a second direction onthe screen different from the first direction, the first movement amountand the second movement amount corresponding to the detected detectionvalue.

The display control means controls display on the screen so that animage displayed on the screen is scrolled in accordance with the firstmovement amount and the second movement amount whose ratio has beenchanged.

According to an embodiment of the present invention, there is providedan electronic apparatus including a display section, a detection means,a change means, and a display control means.

The display section displays a screen.

The detection means detects a movement amount of a user operation in anarbitrary direction.

The change means changes a ratio of a first movement amount as amovement amount in a first operation direction corresponding to a firstdirection on the screen to a second movement amount as a movement amountin a second operation direction corresponding to a second direction onthe screen different from the first direction, the first movement amountand the second movement amount corresponding to a detection valuedetected by the detection means.

The display control means controls display on the screen so that animage displayed on the screen is scrolled in accordance with the firstmovement amount and the second movement amount whose ratio has beenchanged.

According to an embodiment of the present invention, there is provided acontrol method including detecting a movement amount of a user operationin an arbitrary direction.

A ratio of a first movement amount as a movement amount in a firstoperation direction corresponding to a first direction on a screen to asecond movement amount as a movement amount in a second operationdirection corresponding to a second direction on the screen differentfrom the first direction is changed, the first movement amount and thesecond movement amount corresponding to a detection value detected.

Display on the screen is controlled so that an image displayed on thescreen is scrolled in accordance with the first movement amount and thesecond movement amount whose ratio has been changed.

According to an embodiment of the present invention, there is providedan input apparatus including a detection section, a change section, anda transmission section.

The detection section detects a movement amount of a user operation inan arbitrary direction.

The change section changes a ratio of a first movement amount as amovement amount in a first operation direction corresponding to a firstdirection on a screen to a second movement amount as a movement amountin a second operation direction corresponding to a second direction onthe screen different from the first direction, the first movement amountand the second movement amount corresponding to a detection valuedetected by the detection section.

The transmission section transmits the first movement amount and thesecond movement amount whose ratio has been changed as scrollinformation of an image displayed on the screen.

According to an embodiment of the present invention, there is provided acontrol apparatus controlling display of scroll of an image displayed ona screen in accordance with information transmitted from an inputapparatus including a detection means for detecting a movement amount ofa user operation in an arbitrary direction and a transmission means fortransmitting the information on a related value related to a detectionvalue detected by the detection means, the control apparatus including areception section, a change section, and a display control section.

The reception section receives the information.

The change section changes a ratio of a first movement amount as amovement amount in a first operation direction corresponding to a firstdirection on the screen to a second movement amount as a movement amountin a second operation direction corresponding to a second direction onthe screen different from the first direction, the first movement amountand the second movement amount corresponding to the detected detectionvalue.

The display control section controls the display on the screen so thatthe image displayed on the screen is scrolled in accordance with thefirst movement amount and the second movement amount whose ratio hasbeen changed.

In the descriptions above, elements described as “ . . . means” may berealized by hardware, or may be realized by both software and hardware.In the case of realization by both the software and hardware, thehardware includes at least a storage device for storing a softwareprogram.

Typically, the hardware is constituted by selectively using at least oneof a sensor, a CPU (Central Processing Unit), an MPU (Micro ProcessingUnit), a RAM (Random Access Memory), a ROM (Read Only Memory), a DSP(Digital Signal Processor), an FPGA (Field Programmable Gate Array), anASIC (Application Specific Integrated Circuit), a NIC (Network InterfaceCard), a WNIC (Wireless NIC), a modem, an optical disc, a magnetic disk,and a flash memory.

As described above, according to the embodiments of the presentinvention, an input apparatus, a control apparatus, a control system, anelectronic apparatus, and a control method that are capable of improvingan operational feeling in scrolling an image displayed on a screen canbe provided.

These and other objects, features and advantages of the presentinvention will become more apparent in light of the following detaileddescription of best mode embodiments thereof, as illustrated in theaccompanying drawings.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram showing a control system according to an embodimentof the present invention;

FIG. 2 is a perspective diagram showing an input apparatus;

FIG. 3 is a diagram schematically showing an internal structure of theinput apparatus;

FIG. 4 is a block diagram showing an electrical structure of the inputapparatus;

FIG. 5 is a diagram showing an example of a screen displayed on adisplay apparatus;

FIG. 6 is a diagram showing a state where a user is holding the inputapparatus;

FIGS. 7A and 7B are explanatory diagrams showing typical examples ofways of moving the input apparatus and ways a pointer moves on a screenaccordingly;

FIG. 8 is a perspective diagram showing a sensor unit;

FIG. 9 is a diagram for explaining an operation of the control systemthat is carried out when the pointer moves on the screen in accordancewith a 3-dimensional operation made by the user (pointer mode);

FIG. 10 is a flowchart showing an operation of the input apparatusaccording to the embodiment of the present invention;

FIGS. 11A and 11B are diagrams for explaining relationships betweenweighting factors α and β and scroll tilt directions;

FIG. 12 is a diagram showing an operation of the input apparatusaccording to another embodiment of the present invention;

FIGS. 13A and 13B are diagrams showing relationships between operationdirections of the input apparatus and scroll directions in a case wherethe processing shown in FIG. 12 is executed;

FIG. 14 is a flowchart showing an operation of the input apparatusaccording to another embodiment of the present invention;

FIG. 15 is a diagram for explaining a first angle range and a secondangle range;

FIGS. 16A and 16B are diagrams showing relationships between theoperation directions of the input apparatus and scroll directions in acase where the processing shown in FIG. 14 is executed;

FIG. 17 is a flowchart showing an operation of the input apparatusaccording to another embodiment of the present invention;

FIGS. 18A and 183 are diagrams showing temporal changes of ranges of thefirst angle range and the second angle range in a case where theprocessing shown in FIG. 17 is executed;

FIG. 19 is a flowchart showing an operation of the input apparatusaccording to another embodiment of the present invention;

FIG. 20 is a diagram for explaining a first modified angle range and asecond modified angle range;

FIG. 21 is a flowchart showing an operation of the input apparatusaccording to another embodiment of the present invention;

FIG. 22 is a diagram for explaining a third angle range;

FIG. 23 are diagrams showing relationships between the operationdirections of the input apparatus and scroll directions in a case wherethe processing shown in FIG. 21 is executed;

FIGS. 24A and 24B are diagrams each showing a relationship between anoperation direction of the input apparatus and a direction in which animage is scrolled;

FIG. 25 is a flowchart showing an operation of the input apparatus ofthe control system according to another embodiment of the presentinvention;

FIG. 26 is a diagram showing an image and a small-size screen displayedon the screen;

FIG. 27 is a diagram showing an image and scrollbars displayed on thescreen; and

FIG. 28 is a diagram showing an image and a reference point displayed onthe screen.

DESCRIPTION OF PREFERRED EMBODIMENTS

Hereinafter, embodiments of the present invention will be described withreference to the drawings.

First Embodiment

FIG. 1 is a diagram showing a control system according to a firstembodiment of the present invention. A control system 100 includes adisplay apparatus 5, a control apparatus 40, and an input apparatus 1.

FIG. 2 is a perspective diagram showing the input apparatus 1. The inputapparatus 1 is of a size that a user is capable of holding. The inputapparatus 1 includes a casing 10. Further, the input apparatus 1includes an operation section 23 (see FIG. 6) including a button 11 anda button 12 adjacent to the button 11 that are provided at a center ofan upper portion of the casing 10, and a button 13 provided at a sideportion of the casing 10.

Typically, the buttons 11, 12, and 13 are each a press-type button. Theoperation section 23 is not limited to the press-type button, and abar-type operation section that is operated with one end as a fulcrum,or a slide-type operation section may also be used. Each of the buttons11, 12, and 13 includes a built-in switch (not shown) which detects anoperation of the user with respect to the operation section and outputsan operation signal. As the switch that outputs an operation signal, anoptical sensor or a capacitance sensor may be used.

The button 11 has a function corresponding to a left button of aplanar-operation-type mouse used for a PC, and the button 12 adjacent tothe button 11 has a function corresponding to a right button of a mouse,for example. For example, an operation of selecting an icon 4 (see FIG.5) may be carried out by clicking the button 11, and an operation ofopening a file may be carried out by double-clicking the button 11.

The button 13 has a function as a switch button for switching a pointermode to a scroll mode and vice versa. The “pointer mode” is a mode inwhich a pointer 2 displayed on a screen 3 (see FIG. 5) is moved inaccordance with a movement of the casing 10. The “scroll mode” is a modein which an image 6 displayed on the screen 3 is scrolled in accordancewith the movement of the casing 10.

FIG. 3 is a diagram schematically showing an internal structure of theinput apparatus 1. FIG. 4 is a block diagram showing an electricalstructure of the input apparatus 1.

The input apparatus 1 includes a sensor unit 17, a control unit 30, andbatteries 14.

FIG. 8 is a perspective diagram showing the sensor unit 17.

The sensor unit 17 includes an acceleration sensor unit 16 for detectingaccelerations in different angles such as along two orthogonal axes (X′axis and Y′ axis). Specifically, the acceleration sensor unit 16includes two sensors, that is, a first acceleration sensor 161 and asecond acceleration sensor 162.

The sensor unit 17 further includes an angular velocity sensor unit 15for detecting angular accelerations about the two orthogonal axes.Specifically, the angular velocity sensor unit 15 includes two sensors,that is, a first angular velocity sensor 151 and a second angularvelocity sensor 152. The acceleration sensor unit 16 and the angularvelocity sensor unit 15 are packaged and mounted on a circuit board 25.

As each of the first angular velocity sensor 151 and the second angularvelocity sensor 152, a vibration gyro sensor for detecting Coriolisforce in proportion to an angular velocity is used. As each of the firstacceleration sensor 161 and the second acceleration sensor 162, anysensor such as a piezoresistive sensor, a piezoelectric sensor, or acapacitance sensor may be used. Each of the angular velocity sensors 151and 152 is not limited to the vibration gyro sensor, and a rotary topgyro sensor, a ring laser gyro sensor, a gas rate gyro sensor, ageomagnetic gyro sensor, and the like may also be used.

In descriptions on FIGS. 2 and 3, a longitudinal direction of the casing10 is referred to as Z′ direction, a thickness direction of the casing10 is referred to as X′ direction, and a width direction of the casing10 is referred to as Y′ direction for convenience. In this case, thesensor unit 17 is incorporated into the casing 10 such that a surface ofthe circuit board 25 on which the acceleration sensor unit 16 and theangular velocity sensor unit 15 are mounted becomes substantiallyparallel to an X′-Y′ plane. As described above, the sensor units 16 and15 each detect physical amounts with respect to the two axes, that is,the X′ axis and the Y′ axis.

In the specification, a coordinate system that moves along with theinput apparatus 1, that is, a coordinate system fixed to the inputapparatus 1 is expressed using the X′ axis, Y′ axis, and Z′ axis,whereas a coordinate system stationary on earth, that is, an inertialcoordinate system is expressed using the X axis, Y axis, and Z axis.Moreover, in descriptions below, with regard to a movement of the inputapparatus 1, a rotational direction about the X′ axis is sometimesreferred to as pitch direction, a rotational direction about the Y′ axisis sometimes referred to as yaw direction, and a rotational directionabout the Z′ axis (roll axis) is sometimes referred to as rolldirection.

The control unit 30 includes a main substrate 18, an MPU 19 (MicroProcessing Unit) (or CPU) mounted on the main substrate 18, a crystaloscillator 20, a transceiver 21, and an antenna 22 printed on the mainsubstrate 18.

The MPU 19 includes a built-in volatile or nonvolatile memory requisitetherefor. The MPU 19 is input with a detection signal from the sensorunit 17, an operation signal from the operation section, and the like,and executes various types of operational processing in order togenerate predetermined control signals in response to those inputsignals. The memory may be provided separate from the MPU 19.

Typically, the sensor unit 17 outputs analog signals. In this case, theMPU 19 includes an A/D (Analog/Digital) converter. However, the sensorunit 17 may be a unit that includes the A/D converter.

The transceiver 21 (transmission means) transmits the control signalsgenerated in the MPU 19 as RF radio signals to the control apparatus 40via the antenna 22. The transceiver 21 is also capable of receivingvarious signals transmitted from the control apparatus 40.

The crystal oscillator 20 generates clocks and supplies them to the MPU19. As the batteries 14, dry cell batteries, rechargeable batteries, andthe like are used.

The control apparatus 40 includes an MPU 35 (or CPU), a RAM 36, a ROM37, a video RAM 41, a display control section 42, an antenna 39, and atransceiver 38.

The transceiver 38 receives the control signal transmitted from theinput apparatus 1 via the antenna 39 (reception means). The transceiver38 is also capable of transmitting various predetermined signals to theinput apparatus 1. The MPU 35 analyzes the control signal and executesvarious types of operational processing. The display control section 42mainly generates screen data to be displayed on the screen 3 of thedisplay apparatus 5 under control of the MPU 35. The video RAM 41 servesas a work area of the display control section 42 and temporarily storesthe generated screen data.

The control apparatus 40 may be an apparatus dedicated to the inputapparatus 1, or may be a PC or the like. The control apparatus 40 is notlimited to the apparatus dedicated to the input apparatus 1, and may bea computer integrally formed with the display apparatus 5, audiovisualequipment, a projector, a game device, a car navigation system, or thelike.

Examples of the display apparatus 5 include a liquid crystal display andan EL (Electro-Luminescence) display. The display apparatus 5 mayalternatively be an apparatus integrally formed with a display andcapable of receiving television broadcasts and the like, or an apparatusin which such a display and the control apparatus 40 are integrated.

FIG. 5 is a diagram showing an example of the screen 3 displayed on thedisplay apparatus 5. GUIs such as icons 4 and the pointer 2 aredisplayed on the screen 3. The icons are images on the screen 3representing functions of programs, execution commands, file contents,and the like on the computer. Moreover, on the screen 3, an image 6 suchas a web image including a plurality of letters 7 is displayed, forexample.

FIG. 6 is a diagram showing a state where a user is holding the inputapparatus 1. As shown in FIG. 6, the input apparatus 1 may include, asthe operation section 23, in addition to the buttons 11, 12, and 13,various operation buttons 29 such as those provided to a remotecontroller for operating a television or the like and a power switch 28,for example. Command signals generated when the user moves the inputapparatus 1 in the air or operates the operation section 23 whileholding the input apparatus 1 as shown in the figure are output to thecontrol apparatus 40, and the control apparatus 40 controls the GUI.

Next, a description will be given on typical examples of ways of movingthe input apparatus 1 and ways the pointer 2 moves on the screen 3accordingly. FIGS. 7A and 7B are explanatory diagrams therefor.

As shown in FIGS. 7A and 7B, the user holds the input apparatus 1 so asto aim the buttons 11 and 12 side of the input apparatus 1 at thedisplay apparatus 5 side. The user holds the input apparatus 1 so that athumb is located on an upper side and a pinky is located on a lower sideas in handshakes. In this state, the circuit board 25 (see FIG. 8) ofthe sensor unit 17 is close to being in parallel with the screen 3 ofthe display apparatus 5, and the two axes as detection axes of thesensor unit 17 respectively correspond to the horizontal axis (X axis)and the vertical axis (Y axis) on the screen 3. Hereinafter, theposition of the input apparatus 1 as shown in FIGS. 7A and 7B isreferred to as reference position.

As shown in FIG. 7A, when the user moves a wrist or an arm in thevertical direction, that is, the pitch direction from the referenceposition, the second acceleration sensor 162 detects an accelerationa_(y) in the Y′-axis direction and the second angular velocity sensor152 detects an angular velocity ω_(θ) about the X′ axis. Based on thosephysical amounts, the control apparatus 40 controls display of thepointer 2 so as to move the pointer 2 in the vertical direction on thescreen 3.

Meanwhile, as shown in FIG. 7B, when the user moves the wrist or the armin the lateral direction, that is, the yaw direction from the referenceposition, the first acceleration sensor 161 detects an accelerationa_(x) in the X′-axis direction and the first angular velocity sensor 151detects an angular velocity ω_(ψ) about the Y′ axis. Based on thethus-detected physical amounts, the control apparatus 40 controlsdisplay of the pointer 2 so as to move the pointer 2 in the horizontaldirection on the screen 3.

(Description on Operation)

Next, an operation of the control system 100 structured as describedabove will be described.

First, an operation of the control system 100 in a case where thepointer 2 moves on the screen 3 in accordance with a 3-dimensionaloperation made by the user (pointer mode) will be described briefly.FIG. 9 is a flowchart showing the operation of the control system 100 inthis case.

As shown in FIG. 9, when the user presses the power supply switch 28 andthe power of the input apparatus 1 is thus turned on, for example,biaxial angular velocity signals are output from the angular velocitysensor unit. The MPU 19 acquires angular velocity values (ω_(ψ), ω_(θ))from the angular velocity signals (Step 101).

Further, upon turning on the power of the input apparatus 1, biaxialacceleration signals are output from the acceleration sensor unit 16.The MPU 19 acquires acceleration values (a_(x), a_(y)) from the biaxialacceleration signals (Step 102).

The MPU 19 typically carries out the process of acquiring angularvelocity values (ω_(ψ), ω_(θ)) (Step 101) and the process of acquiringacceleration values (a_(x), a_(y)) (Step 102) in sync. However, theprocess of acquiring angular velocity values (ω_(ψ), ω_(θ)) and theprocess of acquiring acceleration values (a_(x), a_(y)) do not alwaysneed to be carried out in sync (at the same time). For example, theacceleration values (a_(x), a_(y)) may be obtained after the angularvelocity values (ω_(ψ), ω_(θ)) are obtained, or the angular velocityvalues (ω_(ψ), ω_(θ)) may be obtained after the acceleration values(a_(x), a_(y)) are obtained.

Based on the acceleration values (a_(x), a_(y)) and the angular velocityvalues (ω_(ψ), ω_(θ)), the MPU 19 calculates velocity values (firstvelocity value V_(x) and second velocity value V_(y)) by a predeterminedoperation (Step 103). The first velocity value V_(x) is a velocity valuein a direction along the X′ axis, and the second velocity value V_(y) isa velocity value in a direction along the Y′ axis.

As a method of calculating velocity values, there is a method in whichthe MPU 19 obtains radius gyrations (R_(ψ), R_(θ)) of the movement ofthe input apparatus 1 by dividing the acceleration values (a_(x), a_(y))by angular acceleration values (Δω_(ψ), Δω_(θ)), and calculates velocityvalues by multiplying the radius gyrations (R_(ψ), R_(θ)) by the angularvelocity values (ω_(ψ), ω_(θ)). Alternatively, the radius gyrations(R_(ψ), R_(θ)) may be obtained by dividing acceleration change rates(Δa_(x), Δa_(y)) by angular acceleration change rates (Δ(Δω_(ψ)),Δ(Δω_(θ))). An effect of gravity accelerations can be removed when theradius gyrations (R_(ψ), R_(θ)) are calculated by dividing theacceleration change rates (Δa_(x), Δa_(y)) by the angular accelerationchange rates (Δ(Δω_(ψ)), Δ(Δω_(θ))).

As another example of the method of calculating the velocity values(V_(x), V_(y)), there is a method in which the MPU 19 calculates thevelocity values by, for example, integrating the acceleration values(a_(x), a_(y)) while using the angular velocity values (ω_(ψ), ω_(θ)) asan adjunct for the integration operation.

By calculating the velocity values by the calculation method describedabove, an operational feeling of the input apparatus 1 that matches anintuition of the user can be obtained, and moreover, the movement of thepointer 2 on the screen 3 also accurately matches the movement of theinput apparatus 1. However, the velocity values (V_(x), V_(y)) do notalways need to be calculated by the calculation method above. Forexample, it is also possible for the velocity values (V_(x), V_(y)) tobe calculated by simply integrating the acceleration values (a_(x),a_(y)). Alternatively, the detected angular velocity values (ω_(ψ),ω_(θ)) may be used as they are as the velocity values (V_(x), V_(y)).

The MPU 19 transmits information on the calculated velocity values(V_(x), V_(y)) to the control apparatus 40 via the transceiver 21 andthe antenna 22 (Step 104).

The MPU 35 of the control apparatus 40 receives the information on thevelocity values (V_(x), V_(y)) via the antenna 39 and the transceiver 38(Step 105). In this case, the input apparatus 1 transmits the velocityvalues (V_(x), V_(y)) every predetermined number of clocks, that is,every time a predetermined time passes, so the control apparatus 40receives the velocity values every predetermined number of clocks.

Upon receiving the velocity values, the MPU 35 of the control apparatus40 generates new coordinate values (X(t), Y(t)) by adding the velocityvalues to coordinate values using Equations (1) and (2) below (Step106). The MPU 35 controls display on the screen so that the pointer 2moves to a position corresponding to the generated coordinate values(Step 107).

X(t)=X(t−1)+V _(x)  (1)

Y(t)=Y(t−1)+V _(y)  (2)

It should be noted that the calculation of the velocity values (V_(x),V_(y)) may be executed by the control apparatus 40. In this case, theinput apparatus 1 transmits information on the angular velocity values(ω_(θ), ω_(θ)) and the acceleration values (a_(x), a_(y)) to the controlapparatus 40 via the transceiver 21 and the antenna 22. Based on theinformation on the angular velocity values (ω_(θ), ω_(θ)) and theacceleration values (a_(x), a_(y)) received via the antenna 39 and thetransceiver 38, the control apparatus 40 calculates the velocity values(V_(x), V_(y)). The method of calculating the velocity values is asdescribed above.

Next, an operation of the input apparatus during the pointer mode andthe scroll mode will be described.

FIG. 10 is a flowchart showing an operation of the input apparatus.

As shown in FIG. 10, the MPU 19 acquires angular velocity values (ω_(ψ),ω_(θ)) and acceleration values (a_(x), a_(y)) from the angular velocitysensor unit 15 and the acceleration sensor unit 16 (Step 201). Based onthe acquired angular velocity values (ω_(ψ), ω_(θ)) and accelerationvalues (a_(x), a_(y)), the MPU 19 calculates velocity values (V_(x),V_(y)) (Step 202).

Upon calculating the velocity values (V_(x), V_(y)), the MPU 19 judgeswhether an operation signal from a switch (not shown) provided to thebutton 13 is input (Step 203). When the user has not pressed the button13 and an operation signal from the switch is not yet input (NO in Step203), the MPU 19 transmits the calculated velocity values (V_(x), V_(y))to the control apparatus 40 as information on a movement amount of thepointer 2 (Step 204). Upon transmitting information on the velocityvalues (V_(x), V_(y)), the MPU 19 returns to Step 201.

Upon receiving the information on the velocity values (V_(x), V_(y)),the MPU 35 of the control apparatus 40 generates new coordinate valuesand controls display on the screen 3 so that the pointer 2 moves to aposition corresponding to the generated coordinate values (pointermode).

When the user presses the button 13, an operation signal is output fromthe switch to be input to the MPU 19 (YES in Step 203). Upon being inputwith the operation signal, the MPU 19 multiplies the first velocityvalue V_(x) and the second velocity value V_(y) by a first weightingfactor α and a second weighting factor β, respectively, as expressed inEquations (3) and (4) below to thus calculate a first modified velocityvalue V_(x)′ and a second modified velocity value V_(y)′ (Step 205).

V _(x) ′=αV _(x)  (3)

V _(y) ′=βV _(y)  (4)

Here, the weighting factors (α, β) are typically different values andstored in a memory (not shown), for example. By multiplying thedifferent weighting factors (α, β) to the velocity values (V_(x),V_(y)), the MPU 19 changes a ratio of the first velocity value V_(x) tothe second velocity value V_(y) (ratio change means). The weightingfactors (α, β) can take various values. By setting the weighting factors(α, β) as appropriate, a scroll direction can be biased in avertical-axis (Y-axis) direction or a horizontal-axis (X-axis) directionon the screen 3. Details on relationships between the weighting factors(α, β) and scroll tilt directions will be described later.

Upon calculating the modified velocity values (V_(x)′, V_(y)′), the MPU19 transmits information on the modified velocity values (V_(x)′,V_(y)′) to the control apparatus 40 as scroll information (Step 206).Upon transmitting the information on the modified velocity values(V_(x)′, V_(y)′), the MPU 19 returns to Step 201.

The MPU 35 of the control apparatus 40 receives the transmittedinformation on the modified velocity values (V_(x)′, V_(y)′). When theimage 6 displayed on the screen 3 is in an active state or the pointer 2is positioned inside the image 6 on the screen 3, for example, the MPU35 controls display so that the letters 7 inside the image 6 arescrolled at a velocity corresponding to the received modified velocityvalues (V_(x)′, V_(y)′) (scroll mode). It should be noted that examplesof the image 6 as a scroll target include a web image, a map, and an EPG(Electronic Program Guide).

By the processing shown in FIG. 10, by the user operating the inputapparatus 3-dimensionally while pressing the button 13, the image 6displayed on the screen 3 is scrolled in a direction biased in thevertical-axis direction or the horizontal-axis direction.

When the information on the modified velocity values (V_(x)′, V_(y)′) istransmitted in Step 206, a signal transmitted from the input apparatus 1to the control apparatus 40 contains, in addition to the information onthe modified velocity values (V_(x)′, V_(y)′), a signal for causing thecontrol apparatus 40 to control display of scroll. Accordingly, sincethe control apparatus 40 can distinctively recognize the pointer modeand the scroll mode, display of scroll on the screen can be controlledwhen the modified velocity values (V_(x)′, V_(y)′) are transmitted. Itshould be noted that as another method used for the control apparatus 40to distinctively recognize the pointer mode and the scroll mode, thereis a method of transmitting a mode switch signal that indicates that amode has been switched. Alternatively, the control apparatus 40 candistinctively recognize the pointer mode and the scroll mode also bytransmission of a signal indicating that the button 13 has been pressed(e.g., press code). Any method may be adopted for the method used forthe control apparatus 40 to distinctively recognize the pointer mode andthe scroll mode.

(Relationships Between Weighting Factors (α, β) and Scroll TiltDirections)

Next, relationships between the weighting factors (α, β) and scroll tiltdirections will be described.

FIGS. 11A and 11B are diagrams for explaining the relationships betweenthe weighting factors (α, β) and scroll tilt directions.

As shown in FIG. 11A, when the first weighting factor α is set to besmaller than the second weighting factor β, a scroll direction of theimage 6 is biased in the vertical-axis (Y-axis) direction on the screen3 with respect to an operation direction (movement direction) of theinput apparatus 1. In this case, the weighting factors (α, β) are setto, for example, (⅓, 1), (½, 1), (½, 2), (½, 3), (1, 2), (1, 3), or (1,4). The weighting factors (α, β) are not limited to those values and mayof course take other values.

By thus setting the first weighting factor α to be smaller than thesecond weighting factor β, the scroll direction can be biased in thevertical-axis direction on the screen. Accordingly, an operationalfeeling in scroll operations can be improved in a case where the image 6is long in the vertical-axis direction on the screen 3 as a whole, forexample. Since the image 6 such as a web image is, in many cases, longin the vertical-axis direction on the screen 3 as a whole in particular,an operational feeling in scrolling the image 6 such as a web image canbe improved.

As shown in FIG. 11B, when the first weighting factor α is set to belarger than the second weighting factor β, the scroll direction of theimage 6 is biased in the horizontal-axis (X-axis) direction on thescreen 3 with respect to the operation direction of the input apparatus1. In this case, the weighting factors (α, β) are set to, for example,(4, 1), (3, 1), (2, 1), (3, ½), (2, ½), (1, ½), or (1, ⅓). The weightingfactors (α, β) are not limited to those values and may of course takeother values.

By thus setting the first weighting factor α to be larger than thesecond weighting factor β, the scroll direction can be biased in thehorizontal-axis direction on the screen. Accordingly, an operationalfeeling in scroll operations can be improved in a case where the image 6is long in the horizontal-axis direction on the screen 3 as a whole, forexample.

Here, it is also possible to set the weighting factors such that eitherthe first weighting factor α or the second weighting factor β is set to0 like (1, 0) and (0, 1).

For example, when the weighting factors (α, β) are (1, 0), the MPU 19multiplies the first and second velocity values (V_(x), V_(y)) by 1 and0, respectively, to thus calculate the first and second modifiedvelocity values (V_(x)′, V_(y)′) in Step 205. Then, the MPU 19 transmitsinformation on the calculated modified velocity values (V_(x)′, V_(y)′)to the control apparatus 40 (Step 206). In this case, the image 6 isscrolled only in the vertical-axis direction and not in thehorizontal-axis direction on the screen 3. In other words, the scrolldirection is restricted to the vertical-axis direction on the screen 3.

Similarly, when the weighting factors (α, β) are (0, 1), for example,the image 6 is scrolled only in the horizontal-axis direction and not inthe vertical-axis direction on the screen 3. In other words, the scrolldirection is restricted to the horizontal-axis direction on the screen3.

It should be noted that in the specification, the expression “scrolldirection is biased” means that, as shown in FIGS. 11A and 11B, thescroll direction is biased in a predetermined axial direction on thescreen 3 (e.g., vertical-axis direction). On the other hand, theexpression “scroll direction is restricted” means that the scrolldirection is biased at maximum to a predetermined axial direction on thescreen and scroll cannot be performed in any other directions.

Next, a description will be given on a case where the weighting factors(α, β) are set such that either the first weighting factor α or thesecond weighting factor β is set to 1 like (0, 1), (½, 1), (1, 2), (2,1), (1, ½), and (1, 0).

When the weighting factors (α, β) are, for example, (½, 1), the firstvelocity value V_(x) is multiplied by ½ and reduced, and a firstmodified velocity value V_(x)′ is thus obtained (Step 205). Moreover,the second velocity value V_(y) is multiplied by 1 to thus obtain asecond modified velocity value V_(y)′. The value obtained by multiplyingthe second velocity value V_(y) by 1 (second modified velocity valueV_(y)′) is the second velocity value V_(y) itself, so the secondmodified velocity value V_(y)′ does not need to be calculated. In thiscase, the MPU 19 only needs to transmit the first modified velocityvalue V_(x)′ and the second velocity value V_(y) to the controlapparatus 40 as scroll information in Step 206.

In other words, when either one of the weighting factors (α, β) is 1,one of the modified velocity values (V_(x)′, V_(y)′) corresponding toone of the velocity values (V_(x), V_(y)) to which 1 is multiplied doesnot need to be calculated. Accordingly, a calculation amount can bereduced, with the result that power consumption of the input apparatus 1can be reduced.

The processing shown in FIG. 10 may be mainly executed by the controlapparatus 40.

In this case, the control apparatus 40 receives information on velocityvalues (V_(x), V_(y)) transmitted from the input apparatus 1. Uponreceiving the information on the velocity values (V_(x), V_(y)), the MPU35 of the control apparatus 40 calculates modified velocity values(V_(x)′, V_(y)′) by multiplying the received velocity values (V_(x),V_(y)) by the weighting factors (α, β). Then, the MPU 35 controlsdisplay on the screen so that the image displayed on the screen isscrolled at a velocity corresponding to the modified velocity values(V_(x)′, V_(y)′). It should be noted that processing according toembodiments and modified examples of the present invention to bedescribed hereinbelow can all be applied as processing of the controlapparatus 40.

Second Embodiment

Next, a second embodiment of the present invention will be described.The first embodiment above has described a case where the scrolldirection is biased in (restricted to) a uniaxial direction of one ofthe horizontal-axis direction and the vertical-axis direction on thescreen 3. The second embodiment is different from the first embodimentin that the scroll direction is biased in (restricted to) biaxialdirections of the horizontal-axis direction and the vertical-axisdirection on the screen 3. Therefore, that point will mainly bedescribed.

FIG. 12 is a flowchart showing an operation of the input apparatus 1according to the second embodiment.

As shown in FIG. 12, in Steps 301 to 304, processes that are the same asthose of Steps 201 to 204 of FIG. 10 are executed. In other words, whenjudged that the button 13 is not pressed (NO in Step 303), informationon velocity values is transmitted from the input apparatus 1 (Step 304),and the pointer 2 displayed on the screen 3 is moved at a velocitycorresponding to the velocity values.

When the user presses the button 13, an operation signal is output fromthe switch provided to the button 13 and input to the MPU 19 (YES inStep 303).

Upon being input with the operation signal, the MPU 19 judges whether anabsolute value of the first velocity value |V_(x)| is larger than anabsolute value of the second velocity value |V_(y)|. By comparing theabsolute value of the first velocity value |V_(x)| and the absolutevalue of the second velocity value |V_(y)| in Step 305, the MPU 19judges an operation direction (movement direction) of the inputapparatus 1 (judgment means). Specifically, when the absolute value ofthe first velocity value |V_(x)| is larger than the absolute value ofthe second velocity value |V_(y)|, the MPU 19 judges that the inputapparatus 1 is being operated in a direction biased in the X′-axisdirection. Similarly, when the absolute value of the second velocityvalue |V_(y)| is larger than the absolute value of the first velocityvalue |V_(x)|, the MPU 19 judges that the input apparatus 1 is beingoperated in a direction biased in the Y′-axis direction.

When judged that the absolute value of the first velocity value |V_(x)|is larger than the absolute value of the second velocity value |V_(y)|(YES in Step 305), the MPU 19 sets the first weighting factor α to belarger than the second weighting factor β (Step 306). On the other hand,when judged that the absolute value of the first velocity value |V_(x)|is smaller than the absolute value of the second velocity value |V_(y)|(NO in Step 305), the MPU 19 set the first weighting factor α to besmaller than the second weighting factor β (Step 307). Values determinedin advance are used as the weighting factors (α, β) set in Steps 306 and307. For example, the weighting factors (α, β) set in Step 306 are, forexample, (1, ½), and the weighting factors (α, β) set in Step 307 are,for example, (½, 1). As other combinations of the weighting factors (α,β) set in Steps 306 and 307, there are, for example, [(1, 0) and (0,1)], [(1, ⅓) and (⅓, 1)], [(1, 2) and (2, 1)], and [(1, 3) and (3, 1)].However, the combination is not limited to those combinations, and othervalues may be used instead.

Upon setting the weighting factors (α, β), the MPU 19 multiplies thefirst and second velocity values (V_(x), V_(y)) by the first and secondweighting factors (α, β), respectively, to thus calculate first andsecond modified velocity values (V_(x)′, V_(y)′) (Step 308).

Upon calculating the modified velocity values (V_(x)′, V_(y)′), the MPU19 transmits information on the modified velocity values (V_(x)′,V_(y)′) to the control apparatus 40 as scroll information (Step 309).

Upon receiving the transmitted information on the modified velocityvalues (V_(x)′, V_(y)′), the MPU 35 of the control apparatus 40 controlsdisplay so that the letters 7 in the image 6 are scrolled at a velocitycorresponding to the received modified velocity values (V_(x)′, V_(y)′).

FIGS. 13A and 13B are diagrams showing relationships between operationdirections of the input apparatus 1 and scroll directions in a casewhere the processing shown in FIG. 12 is executed. FIG. 13A showsrelationships between operation directions of the input apparatus 1 andscroll directions in a case where a combination of weighting factors setin Steps 306 and 307 is, for example, [(1, ½) and (½, 1)] or [(2, 1) and(1, 2)]. FIG. 13B shows relationships between operation directions ofthe input apparatus 1 and scroll directions in a case where 0 (or valuethat is substantially 0) is used as in [(1, 0) and (0, 1)] and [(2, 0)and (0, 2)], for example.

As shown in FIG. 13A, when the user operates the input apparatus 1 in adirection within an angle range of ±45 degrees from a direction alongthe X′-axis direction, a scroll direction of an image on the screen 3 isbiased in the horizontal-axis (X-axis) direction on the screen. On theother hand, when the user operates the input apparatus 1 in a directionwithin an angle range of ±45 degrees from a direction along the Y′-axisdirection, the scroll direction of the image on the screen 3 is biasedin the vertical-axis (Y-axis) direction on the screen.

As shown in FIG. 13B, if 0 is used for the weighting factors (α, β),when the user operates the input apparatus 1 in a direction within anangle range of ±45 degrees from a direction along the X′-axis direction,a scroll direction of the image 6 is restricted to the horizontal-axis(X-axis) direction on the screen. On the other hand, when the useroperates the input apparatus 1 in a direction within an angle range of±45 degrees from a direction along the Y′-axis direction, the scrolldirection of the image 6 is restricted to the vertical-axis (Y-axis)direction on the screen.

As described above, since the scroll direction can be biased(restricted) appropriately in accordance with the operation direction ofthe input apparatus 1 in the input apparatus 1 according to the secondembodiment, an operational feeling in scroll operations can beadditionally improved.

Third Embodiment

Next, an input apparatus according to a third embodiment of the presentinvention will be described.

The third embodiment mainly describes points different from those of thesecond embodiment above.

FIG. 14 is a flowchart showing an operation of the input apparatus 1according to the third embodiment.

As shown in FIG. 14, in Steps 401 to 404, processes that are the same asthose of Steps 301 to 304 of FIG. 12 are executed. In this case, by theuser operating the input apparatus 1 3-dimensionally in a state wherethe button 13 is not pressed, the pointer 2 moves on the screen 3 inaccordance with the 3-dimensional operation.

When the button 13 is pressed, an operation signal is output from theswitch provided to the button 13 and input to the MPU 19 (YES in Step403). Upon being input with the operation signal, the MPU 19 calculatesa tilt angle of a combined vector of the first velocity value and thesecond velocity value using Equation (5) below (Step 405). Bycalculating the combined vector tilt angle, the MPU 19 judges anoperation direction (movement direction) of the input apparatus 1.

arctan(V _(y) /V _(x))=ξ  (5)

Upon calculating the combined vector tilt angle ξ, the MPU 19 judgeswhether the combined vector tilt angle ξ is an angle within a firstangle range (Step 406).

Now, the first angle range and a second angle range will be described.

FIG. 15 is a diagram for explaining the first angle range and the secondangle range.

As shown in FIG. 15, the first angle range indicates a range within apredetermined angle from 0 degree (or 180 degrees; same holds true fordescriptions below) (e.g., 0±30 degrees). The second angle rangeindicates a range within a predetermined angle from 90 degrees (or 270degrees; same holds true for descriptions below) (e.g., 90±60 degrees).The input apparatus 1 stores the first angle range and the second anglerange as shown in FIG. 15 in a memory. The horizontal-axis directionwithin the angle ranges shown in FIG. 15 corresponds to a movementdirection (operation direction) of the input apparatus 1 in thehorizontal-axis direction, and the vertical-axis direction correspondsto the movement direction (operation direction) of the input apparatus 1in the vertical-axis direction.

The first angle range and the second angle range can be set variously,but in the description on FIG. 14, the first angle range is assumed tobe an angle range of 0±30 degrees and the second angle range is assumedto be an angle range of 90±60 degrees for convenience.

It should be noted that the MPU 19 may judge whether the combined vectortilt angle ξ is an angle within the second angle range in Step 406.

When judged that the combined vector tilt angle ξ is an angle within thefirst angle range (YES in Step 406), the MPU 19 sets the first weightingfactor α to be larger than the second weighting factor β (Step 407). Onthe other hand, when judged that the combined vector tilt angle ξ is notan angle within the first angle range (NO in Step 406), the MPU 19 setsthe first weighting factor α to be smaller than the second weightingfactor β (Step 408).

Upon setting the weighting factors (α, β), the MPU 19 multiplies thefirst and second velocity values (V_(x), V_(y)) by the first and secondweighting factors (α, β), respectively, to thus calculate first andsecond modified velocity values (V_(x)′, V_(y)′) (Step 409).

Upon calculating the modified velocity values (V_(x)′, V_(y)′), the MPU19 transmits information on the modified velocity values (V_(x)′,V_(y)′) to the control apparatus 40 as scroll information (Step 410).

Upon receiving the transmitted information on the modified velocityvalues (V_(x)′, V_(y)′), the MPU 35 of the control apparatus 40 controlsdisplay so that the letters 7 in the image 6 are scrolled at a velocitycorresponding to the received modified velocity values (V_(x)′, V_(y)′).

FIGS. 16A and 16B are diagrams showing relationships between operationdirections of the input apparatus 1 and scroll directions in a casewhere the processing shown in FIG. 14 is executed. FIG. 16A is a diagramshowing relationships between operation directions of the inputapparatus 1 and scroll directions in a case where a combination ofweighting factors set in Steps 407 and 408 is, for example, [(1, ½) and(½, 1)] or [(2, 1) and (1, 2)]. FIG. 16B is a diagram showingrelationships between operation directions of the input apparatus 1 andscroll directions in a case where 0 (or value that is substantially 0)is used for the weighting factors (α, β) as in [(1, 0) and (0, 1)] and[(2, 0) and (0, 2)], for example.

As shown in FIG. 16A, when the user operates the input apparatus 1 in adirection within an angle range of ±30 degrees from the direction alongthe X′-axis direction, a scroll direction of the image on the screen 3is biased in the horizontal-axis (X-axis) direction on the screen. Onthe other hand, when the user operates the input apparatus 1 in adirection within an angle range of ±60 degrees from the direction alongthe Y′-axis direction, the scroll direction of the image on the screen 3is biased in the vertical-axis (Y-axis) direction on the screen.

As shown in FIG. 16B, if 0 (or value that is substantially 0) is usedfor the weighting factors (α, β), when the user operates the inputapparatus 1 in a direction within an angle range of ±30 degrees from thedirection along the X′-axis direction, a scroll direction of the image 6is restricted to the horizontal-axis (X-axis) direction on the screen.On the other hand, when the user operates the input apparatus 1 in adirection within an angle range of ±60 degrees from the direction alongthe Y′-axis direction, the scroll direction of the image 6 is restrictedto the vertical-axis (Y-axis) direction on the screen 3.

As described above, since the second angle range is set to be largerthan the first angle range in the input apparatus 1 according to thethird embodiment, the image 6 can be scrolled in the vertical-axisdirection on the screen 3 with high sensitivity. As a result, anoperational feeling in scroll operations can be additionally improved ina case where the image 6 is long in the vertical-axis direction on thescreen 3 as a whole.

Here, the first angle range and the second angle range can be setvariously as described above. Examples of the combination of the firstangle range and the second angle range include combinations of (0±35degrees, 90±55 degrees) and (0±40 degrees, 90±50 degrees).

Alternatively, the first angle range may be set to be larger than thesecond angle range. Examples of the combination of the first angle rangeand the second angle range in this case include combinations of (0±60degrees, 90±30 degrees), (0±55 degrees, 90±35 degrees), and (0±50degrees, 90±40 degrees). When the first angle range is set to be largerthan the second angle range, the image 6 can be scrolled in thehorizontal-axis direction on the screen 3 with high sensitivity. As aresult, an operational feeling in scroll operations can be additionallyimproved in a case where the image 6 is long in the horizontal-axisdirection on the screen 3 as a whole.

Fourth Embodiment

Next, an input apparatus according to a fourth embodiment of the presentinvention will be described.

The fourth embodiment is different from the third embodiment above inthat the first angle range and the second angle range are controlledvariably. Therefore, that point will mainly be described.

FIG. 17 is a flowchart showing an operation of the input apparatus 1according to the fourth embodiment.

As shown in FIG. 17, upon calculating velocity values based on acquiredacceleration values and angular velocity values (Steps 501 and 502), theMPU 19 stores the calculated velocity values in the memory (Step 503).Next, the MPU 19 judges whether an operation signal from the switch ofthe button 13 is input (Step 504). When judged that an operation signalis not yet input (NO in Step 504), the MPU 19 transmits information onthe velocity values as information on a movement amount of the pointer 2(Step 505).

On the other hand, when the user presses the button 13 and an operationsignal from the switch of the button 13 is input (YES in Step 504), theMPU 19 reads out velocity values of past n histories that are stored inthe memory. Then, the MPU 19 calculates a combined vector of theread-out velocity values (Step 506). Typically, the MPU 19 obtains a sumΣV_(x) and sum ΣV_(y) of first velocity values V_(x) and second velocityvalues V_(y) of past n histories that are stored in the memory andcalculates a combined vector.

Upon calculating the combined vector, the MPU 19 calculates a combinedvector tilt angle ξ′ by Equation (6) below (Step 507).

arctan=ΣV _(y) /ΣV _(x))=ξ′  (6)

Upon calculating the combined vector tilt angle ξ′, the MPU 19 judgeswhether the combined vector tilt angle ξ′ is an angle within the firstangle range (Step 508). When judged that the combined vector tilt angleξ′ is an angle within the first angle range (YES in Step 508), the MPU19 widens the first angle range (Step 509) (angle range control means).In this case, the second angle range is narrowed. Upon widening thefirst angle range, the MPU 19 sets the first weighting factor α to belarger than the second weighting factor β (Step 510).

On the other hand, when judged that the combined vector tilt angle ξ′ isnot an angle within the first angle range (NO in Step 508), that is,when judged that the combined vector tilt angle ξ′ is an angle withinthe second angle range, the MPU 19 narrows the first angle range (Step511). In this case, the second angle range is widened. Upon narrowingthe first angle range, the MPU 19 sets the first weighting factor α tobe smaller than the second weighting factor β (Step 512).

Upon setting the weighting factors (α, β), the MPU 19 multiplies thefirst and second velocity values (V_(x), V_(y)) by the first and secondweighting factors (α, β), respectively, to thus calculate first andsecond modified velocity values (V_(x)′, V_(y)′) (Step 513).

Upon calculating the modified velocity values (V_(x)′, V_(y)′), the MPU19 transmits information on the modified velocity values (V_(x)′,V_(y)′) to the control apparatus 40 as scroll information (Step 514).

FIGS. 18A and 18B are diagrams showing temporal changes of ranges of thefirst angle range and the second angle range in a case where theprocessing shown in FIG. 17 is executed. FIG. 18A is a diagram showingtemporal changes of the first angle range and the second angle range ina case where the user operates the input apparatus 1 in thehorizontal-axis (X′-axis) direction. FIG. 18B is a diagram showingtemporal changes of the first angle range and the second angle range ina case where the user operates the input apparatus 1 in thevertical-axis (Y′-axis) direction.

As shown in FIG. 18A, when the user operates the input apparatus 1 inthe horizontal-axis direction, the first angle range is graduallywidened. As a result, when the user operates the input apparatus 1 inthe horizontal-axis direction, it becomes easier with time to perform ascroll operation in the horizontal-axis direction with respect to theoperation direction of the input apparatus 1.

As shown in FIG. 183, when the user operates the input apparatus 1 inthe vertical-axis direction, it becomes easier with time to perform ascroll operation in the vertical-axis direction with respect to theoperation direction of the input apparatus 1.

For example, when the user holds the input apparatus 1 and moves it inthe vertical-axis direction from the reference position, the user mightswing his/her arm in an oblique direction from the vertical-axisdirection. However, in the input apparatus 1 according to the fourthembodiment, the second angle range is in a widened state when an arm isswung. Therefore, even when the user swings an arm and operates theinput apparatus 1 in an oblique direction, scroll in the vertical-axisdirection is prioritized on the screen. Thus, since the first anglerange and the second angle range are controlled variably in the inputapparatus 1 according to the fourth embodiment, an operational feeingfor the user in operating the image 6 displayed on the screen 3 can beadditionally improved.

In the description on FIG. 17, a case where a combined vector iscalculated by obtaining sums of first velocity values V_(x) and secondvelocity values V_(y) of past n histories in Step 506 has beendescribed. However, it is also possible for the MPU 19 to calculate meanvalues of first velocity values V_(x) and second velocity values V_(y)of past n histories in Step 506. Alternatively, a moving average of thefirst and second velocity values may be obtained. Alternatively, a valuepassed through an LPF (Lowpass Filter) (hereinafter, referred to asLPF-passed value) may be used as the velocity value in Step 506. When anIIR (Infinite Impulse Response) filter or an FIR (Finite ImpulseResponse) filter is used as the LPF, the LPF-passed value only needs tobe stored in the memory in Step 503.

Fifth Embodiment

Next, a fifth embodiment of the present invention will be described. Ina description on the fifth embodiment, points different from those ofthe fourth embodiment will be mainly described.

FIG. 19 is a flowchart showing an operation of the input apparatus 1according to the fifth embodiment.

As shown in FIG. 19, in Steps 601 to 605, processes that are the same asthose of Steps 501 to 505 of FIG. 17 are executed, and by the useroperating the input apparatus 1 in a state where the button 13 is notpressed, the pointer 2 moves on the screen 3.

When the user presses the button 13 and an operation signal from theswitch is input (YES in Step 604), the MPU 19 reads out velocity values(V_(x), V_(y)) of past n histories that are stored in the memory andcalculates a combined vector of the read-out velocity values (V_(x),V_(y)) (Step 606). Typically, the MPU 19 obtains sums of first velocityvalues and second velocity values of past n histories that are stored inthe memory and calculates a combined vector.

Upon calculating the combined vector of the velocity values, the MPU 19calculates a combined vector tilt angle ξ′ by Equation (6) above (Step607). Next, the MPU 19 judges whether the combined vector tilt angle ξ′is an angle within a first modified angle range (Step 608).

FIG. 20 is a diagram for explaining the first modified angle range andsecond modified angle range. The first modified angle range is an anglerange for changing the first angle range and the second angle range andindicates an angle range of, for example, ±45 degrees from 0 degree (or180 degrees; same holds true for descriptions below). The secondmodified angle range is an angle range for changing the first anglerange and the second angle range and indicates an angle range of, forexample, ±45 degrees from 90 degrees (or 270 degrees; same holds truefor descriptions below). The horizontal-axis direction within themodified angle ranges shown in FIG. 20 corresponds to a movementdirection (operation direction) of the input apparatus 1 in thehorizontal-axis direction, and the vertical-axis direction correspondsto the movement direction (operation direction) of the input apparatus 1in the vertical-axis direction.

The first modified angle range and the second modified angle range arefixed and do not fluctuate by the combined vector tilt angle ξ′.

The first modified angle range and the second modified angle range arenot limited to the range of 0±45 (or 90±45) degrees. The first modifiedangle range and the second modified angle range can be changed asappropriate.

It should be noted that it is also possible to judge whether thecombined vector tilt angle ξ′ is an angle within the second modifiedangle range in Step 608.

When judged that the combined vector tilt angle ξ′ is an angle withinthe first modified angle range (YES in Step 608), the MPU 19 widens thefirst angle range (Step 609). In this case, the second angle range isnarrowed. On the other hand, when judged that the combined vector tiltangle ξ′ is not an angle within the first modified angle range (NO inStep 608), that is, when judged that the combined vector tilt angle ξ′is an angle within the second modified angle range, the MPU 19 narrowsthe first angle range (Step 610). In this case, the second angle rangeis widened.

Next, the MPU 19 judges whether the combined vector tilt angle ξ′ is anangle within the first angle range (Step 611). When judged that thecombined vector tilt angle ξ′ is an angle within the first angle range(YES in Step 611), the MPU 19 sets the first weighting factor α to belarger than the second weighting factor β (Step 612).

On the other hand, when judged that the combined vector tilt angle ξ′ isnot an angle within the first angle range (NO in Step 611), that is,when judged that the combined vector tilt angle ξ′ is an angle withinthe second angle range, the MPU 19 sets the first weighting factor α tobe smaller than the second weighting factor β (Step 613).

Upon setting the weighting factors (α, β), the MPU 19 multiplies thefirst and second velocity values (V_(x), V_(y)) by the first and secondweighting factors (α, β), respectively, to thus calculate first andsecond modified velocity values (V_(x)′, V_(y)′) (Step 614).

Upon calculating the modified velocity values (V_(x)′, V_(y)′), the MPU19 transmits information on the modified velocity values (V_(x)′,V_(y)′) to the control apparatus 40 as scroll information (Step 615).

In the fifth embodiment, the first angle range and the second anglerange are controlled variably based on the first modified angle rangeand the second modified angle range as fixed values. As a result, thefirst angle range and the second angle range can be widened/narrowed asappropriate.

Sixth Embodiment

Next, a sixth embodiment of the present invention will be described.

The above embodiments have described a case where the scroll directionis biased in (restricted to) a uniaxial direction or biaxial directionson the screen. On the other hand, the sixth embodiment is different fromthe above embodiments in that the scroll direction is restricted todirections along four axes on the screen 3. Therefore, that point willmainly be described.

FIG. 21 is a flowchart showing an operation of the input apparatus 1according to this embodiment.

As shown in FIG. 21, in Steps 701 to 704, information on velocity valuesis transmitted as information on a movement amount of the pointer 2 whenthe button 13 is not pressed.

When the user presses the button 13 and an operation signal from theswitch is input (YES in Step 703), the MPU 19 calculates a tilt angle ξof a combined vector of velocity values (V_(x), V_(y)) using Equation(5) above (Step 705).

Upon calculating the combined vector tilt angle ξ, the MPU 19 judgeswhether the combined vector tilt angle ξ is within a third angle range(Step 706).

FIG. 22 is a diagram for explaining the third angle range.

As shown in FIG. 22, in the input apparatus 1 of this embodiment, anangle range is divided into the first angle range, the second anglerange, and the third angle range. The first angle range is, for example,a range within 0±22.5 degrees or 180±22.5 degrees. The second anglerange is, for example, a range within 90±22.5 degrees or 270±22.5degrees. The third angle range is, for example, a range within 45±22.5degrees, 135±22.5 degrees, 225±22.5 degrees, or 315±22.5 degrees. Itshould be noted that ranges of the first angle range, the second anglerange, and the third angle range can be changed as appropriate. Anglesto be a reference of the third angle range (broken lines of FIG. 22) canalso be changed as appropriate. The horizontal-axis direction in theangle ranges shown in FIG. 22 corresponds to a movement direction(operation direction) of the input apparatus 1 in the horizontal-axisdirection, and the vertical-axis direction corresponds to a movementdirection (operation direction) of the input apparatus 1 in thevertical-axis direction.

When judged that the combined vector tilt angle ξ is within the thirdangle range (YES in Step 706), the MPU 19 references a table and setsthe weighting factors (α, β) (Step 710). In this case, the weightingfactors (α, β) read out from the table are not constant and are valuesdetermined in relation to velocity values (V_(x), V_(y)). The weightingfactors (α, β) are stored in the table as values for restricting thescroll direction to directions at angles of ±45 degrees from thevertical-axis direction on the screen. It should be noted that theweighting factors (α, β) set in Step 710 may be calculated by a program.

When judged in Step 706 that the combined vector tilt angle ξ is not anangle within the third angle range (NO in Step 706), the MPU 19 judgeswhether the combined vector tilt angle ξ is an angle within the firstangle range (Step 707). When the combined vector tilt angle ξ is anangle within the first angle range (YES in Step 707), the MPU 19 setsthe first weighting factor α to 1 and the second weighting factor 3 to 0(Step 708).

On the other hand, when judged that the combined vector tilt angle ξ isnot an angle within the first angle range (NO in Step 707), that is,when judged that the combined vector tilt angle ξ is an angle within thesecond angle range, the MPU 19 sets the first weighting factor α to 0and the second weighting factor β to 1 (Step 709).

Upon setting the weighting factors (α, β), the MPU 19 multiplies thefirst and second velocity values (V_(x), V_(y)) by the first and secondweighting factors (α, β), respectively, to thus calculate first andsecond modified velocity values (V_(x)′, V_(y)′) (Step 711).

Upon calculating the modified velocity values (V_(x)′, V_(y)′), the MPU19 transmits information on the modified velocity values (V_(x)′,V_(y)′) to the control apparatus 40 as scroll information (Step 712).

FIG. 23 is a diagram showing relationships between operation directionsof the input apparatus 1 and scroll directions in a case where theprocessing shown in FIG. 21 is executed.

As shown in FIG. 23, when the user operates the input apparatus 1 in adirection within an angle range of ±22.5 degrees from a direction alongthe X′-axis direction, a scroll direction of the image 6 is restrictedto the horizontal-axis (X-axis) direction on the screen. When the useroperates the input apparatus 1 in a direction within an angle range of±22.5 degrees from a direction along the Y′-axis direction, the scrolldirection of the image 6 is restricted to the vertical-axis (Y-axis)direction on the screen. When the user operates the input apparatus 1 ina direction within an angle of ±22.5 degrees from a direction at anangle of +45 degrees from the X′-axis direction, the scroll direction ofthe image 6 is restricted to a direction at an angle of +45 degrees fromthe horizontal axis on the screen. When the user operates the inputapparatus 1 in a direction within an angle of ±22.5 degrees from adirection at an angle of −45 degrees from the X′-axis direction, thescroll direction of the image 6 is restricted to a direction at an angleof −45 degrees from the horizontal axis on the screen.

As described above, in the sixth embodiment, the scroll direction isrestricted to directions along four axes of the horizontal-axisdirection, the vertical-axis direction, the direction at an angle of +45degrees from the horizontal axis, and the direction at an angle of −45degrees from the horizontal axis on the screen. As a result, anoperational feeling in scroll operations in a case where the image 6such as a map that is long in the vertical-axis direction and thehorizontal-axis direction on the screen 3 as a whole is operated can beimproved.

The sixth embodiment has been described assuming that the directions towhich the scroll is restricted are the horizontal-axis direction, thevertical-axis direction, and the directions at angles of ±45 degreesfrom the horizontal-axis direction on the screen. However, thedirections to which the scroll is restricted are not limited thereto. Bysetting the weighting factors (α, β) stored in the table as appropriatein Step 710, the scroll direction can be restricted to variousdirections. Examples of the combination of directions to which scroll isrestricted include a combination of the horizontal-axis direction, thevertical-axis direction, and directions at angles of ±30 degrees fromthe horizontal-axis direction and a combination of the horizontal-axisdirection, the vertical-axis direction, and directions at angles of ±60degrees from the horizontal-axis direction. It is of course possible touse other combinations.

The number of restriction axes on the screen 3 is also not limited tofour (four axes). The number of restriction axes may be three (threeaxes) or five (five axes) or more.

The sixth embodiment has described a case where the scroll direction onthe screen 3 is restricted. However, it is also possible to bias thescroll direction on the screen 3.

Moreover, the first angle range, the second angle range, and the thirdangle range may be controlled variably.

Seventh Embodiment

Next, the control system 100 according to a seventh embodiment of thepresent invention will be described.

In the seventh and subsequent embodiments, processing related to anoperation direction of the input apparatus 1 and a direction in which animage is scrolled will be described.

In the 3-dimensional operation input apparatus 1, whether to scroll theimage 6 in a direction in which the input apparatus 1 is operated orscroll the image 6 in an opposite direction from the direction in whichthe input apparatus 1 is operated sometimes becomes a problem.

FIGS. 24A and 24B are diagrams each showing a relationship between theoperation direction of the input apparatus 1 and a direction in whichthe image 6 is scrolled. FIG. 24A is a diagram showing a case where theimage 6 is scrolled in a direction in which the input apparatus 1 isoperated, and FIG. 24B is a diagram showing a case where the image 6 isscrolled in an opposite direction from the direction in which the inputapparatus 1 is operated.

The inventors of the present invention have conducted a user test, whichrevealed that there are both users who feel that scroll of an image in adirection in which the input apparatus 1 is operated provides a betteroperational feeling and users who feel that scroll of an image in anopposite direction from the direction in which the input apparatus 1 isoperated provides a better operational feeling.

In this regard, the input apparatus 1 according to the seventhembodiment executes processing for improving an operational feelingregarding a direction of scrolling the image 6.

FIG. 25 is a flowchart showing an operation of the input apparatus 1 ofthe control system 100 according to this embodiment.

As shown in FIG. 25, the input apparatus 1 calculates velocity values(V_(x), V_(y)) based on acquired angular velocity values (ω_(ψ), ω_(θ))and acceleration values (a_(x), a_(y)) (Steps 801 and 802). Uponcalculating the velocity values (V_(x), V_(y)), the MPU 19 judgeswhether an operation signal from the switch provided to the button 13 isinput (Step 803).

When judged that the operation signal is not input (NO in Step 803), theMPU 19 transmits information on the velocity values (V_(x), V_(y)). Inthis case, the pointer 2 moves on the screen 3 in accordance with amovement of the input apparatus 1.

When the user presses the button 13, the input apparatus 1 transmitsinformation on the velocity values (V_(x), V_(y)) and a small-sizescreen display signal (Step 805).

Upon receiving the small-size screen display signal from the inputapparatus 1, the MPU 35 of the control apparatus 40 controls display onthe screen 3 so that a small-size screen 8 is displayed on the screen 3.Moreover, upon receiving the information on the velocity values (V_(x),V_(y)), the MPU 35 of the control apparatus 40 controls display on thescreen 3 so that the image 6 is scrolled at a velocity corresponding tothe velocity values (V_(x), V_(y)). It should be noted that since asmall-size screen display signal is transmitted from the input apparatus1 during the scroll mode, the MPU 35 can distinctively recognize thevelocity values (V_(x), V_(y)) transmitted in Step 804 and the velocityvalues (V_(x), V_(y)) transmitted in Step 805.

FIG. 26 is a diagram showing the image 6 and small-size screen 8displayed on the screen. As shown in FIG. 26, the small-size screen 8 isdisplayed at a lower right-hand corner of the image 6, for example. Itshould be noted that a position at which the small-size screen 8 isdisplayed may be any position as long as it does not lower visibility ofthe image 6.

The small-size screen 8 is sectioned into a first area 8 a (area inslashes in FIG. 26) corresponding to the entire image 6 and a secondarea 8 b corresponding to a part of the image 6 currently beingdisplayed on the screen.

When the user holds the input apparatus 1 and swings it upwardly fromthe reference position, the MPU 35 of the control apparatus 40 controlsdisplay so that the image 6 is scrolled downwardly at a velocitycorresponding to the velocity values (V_(x), V_(y)). In other words, theMPU 35 of the control apparatus 40 controls display on the screen 3 sothat the image 6 is scrolled in an opposite direction from a vectordirection of the velocity values (V_(x), V_(y)). In addition, the MPU 35of the control apparatus 40 controls display on the screen 3 so that thesecond area 8 b moves upwardly in an area in which the small-size screen8 is displayed. In other words, the MPU 35 of the control apparatus 40controls display so that the image 6 moves in an opposite direction froma direction in which the image 6 is scrolled.

In other words, the MPU 35 of the control apparatus 40 controls displayon the screen 3 so that the image 6 is scrolled in an opposite directionfrom the direction in which the input apparatus 1 is operated and thesecond area 8 b moves in a direction in which the input apparatus 1 isoperated.

By the processing as described above, the user can scroll an imagedisplayed on a screen by merely operating the second area 8 b in thesmall-size screen 8. Accordingly, since it becomes possible to performscroll operations intuitionally, an operational feeling in scrolloperations can be improved. Moreover, since the small-size screen 8 isdisplayed while the button 13 is pressed (during scroll mode), it doesnot lower visibility during the pointer mode.

The input apparatus 1 may transmit modified velocity values (V_(x)′,V_(y)′) instead of velocity values (V_(x), V_(y)) in Step 805. Theprocessing described in the above embodiments can all be applied to thisembodiment. As a result, since the scroll direction of the image 6 isbiased in (restricted to) the horizontal-axis direction or thevertical-axis direction on the screen, an operational feeling in scrolloperations can be additionally improved. The same holds true formodified examples to be described later.

First Modified Example

Next, a first modified example of the control system 100 according tothe seventh embodiment will be described.

The input apparatus 1 of the control system 100 according to the firstmodified example transmits information on velocity values (V_(x), V_(y))and a scrollbar display signal in Step 805 shown in FIG. 25.

Upon receiving the scrollbar display signal, the control apparatus 40displays a scrollbar 9 on the screen 3.

FIG. 27 is a diagram showing the image 6 and scrollbar 9 displayed onthe screen 3. As shown in FIG. 27, the scrollbar 9 is displayed at alower end and rightward end on the screen 3. It should be noted thatpositions at which the scrollbar 9 is displayed may be any position aslong as it does not lower visibility of the image 6.

The scrollbar 9 includes an ordinate-axis scrollbar 9 a and anabscissa-axis scrollbar 9 b.

When the user holds the input apparatus 1 and swings it upwardly fromthe reference position, the MPU 35 of the control apparatus 40 controlsdisplay so that the image 6 is scrolled downwardly at a velocitycorresponding to velocity values (V_(x), V_(y)) transmitted in Step 805.In other words, the MPU 35 of the control apparatus 40 controls displayon the screen 3 so that the image 6 is scrolled in an opposite directionfrom a vector direction of the velocity values (V_(x), V_(y)). Moreover,the MPU 35 of the control apparatus 40 controls display on the screen 3so that the ordinate-axis scrollbar 9 a moves upwardly. Specifically,the MPU 35 of the control apparatus 40 controls display so that theordinate-axis scrollbar 9 a moves in an opposite direction from thedirection in which the image 6 is scrolled.

When the user moves the input apparatus 1 in a right-hand direction onthe screen 3 from the reference position, the image is scrolled in aleft-hand direction, and the abscissa-axis scrollbar 9 b is moved in theright-hand direction on the screen 3.

In other words, the MPU 35 of the control apparatus 40 controls displayon the screen 3 so that the image 6 is scrolled in an opposite directionfrom a direction in which the input apparatus 1 is operated and theordinate-axis scrollbar 9 a and the abscissa-axis scrollbar 9 b aremoved in directions in which the input apparatus 1 is operated.

By the processing as described above, the user can scroll the image 6displayed on the screen by merely operating the scrollbar 9, with theresult that an operational feeling in scroll operations can be improved.Moreover, since the scrollbar 9 is displayed while the button 13 ispressed (during scroll mode), it does not lower visibility during thepointer mode.

Second Modified Example

Next, a second modified example of the control system 100 according tothe seventh embodiment of the present invention will be described.

The input apparatus 1 of the control system 100 according to the secondmodified example transmits information on velocity values (V_(x), V_(y))and a reference point display signal in Step 805 shown in FIG. 25.

Upon receiving the reference point display signal, the control apparatus40 displays a reference point 43 on the image 6 when the pointer 2displayed on the screen 3 is positioned on the image 6, for example.

FIG. 28 is a diagram showing the image 6 and reference point 43displayed on the screen 3. The reference point 43 is displayed as, forexample, a circular point. It should be noted that a shape of thereference point 43 is not particularly limited. The reference point 43is displayed at a position at which the pointer 2 is positioned at atime the button 13 is pressed.

Upon displaying the reference point 43 on the screen 3, the MPU 35 ofthe control apparatus 40 generates coordinate values of the pointer 2based on information on velocity values (V_(x), V_(y)) transmitted fromthe input apparatus 1 in Step 805. Then, the MPU 35 of the controlapparatus 40 controls display so that the pointer 2 moves on the screen.In other words, in the control system 100 according to the secondmodified example, the pointer 2 also moves during the scroll mode.

Moreover, the MPU 35 of the control apparatus 40 adds the velocityvalues (V_(x), V_(y)) transmitted from the input apparatus 1 in Step 805to thus generate integration values. The MPU 35 of the control apparatus40 controls display on the screen so that the image 6 is scrolled at avelocity corresponding to the integration values.

When the user holds the input apparatus 1 and swings it upwardly fromthe reference position, the pointer 2 is moved upwardly on the screen 3and the image 6 is scrolled upwardly. In other words, the MPU 35 of thecontrol apparatus 40 controls display on the screen 3 so that thepointer 2 moves in the same direction as a vector direction of thevelocity values (V_(x), V_(y)) and the image 6 is scrolled in the samedirection as the vector direction of the velocity values (V_(x), V_(y)).

By the processing as described above, the user can scroll the image 6with the pointer 2 as a guide. As a result, since intuitional operationscan be made, an operational feeling can be improved.

Various Modified Examples

The embodiment of the present invention is not limited to the aboveembodiments and various modifications can be made.

For example, it is possible to execute processing that inhibits, whenthe button 13 is started to be pressed, an image displayed on the screen3 from being scrolled during a predetermined time period (first timeperiod) since the start of the press. Accordingly, it is possible toprevent the image from being scrolled in a direction unintended by theuser due to the input apparatus being moved when the user presses thebutton 13.

The present invention is applicable to input apparatuses such as aplanar-operation-type mouse, a touchpad, a joystick, and a pen tablet.Alternatively, the present invention may be applied to aslide-resistance-type input apparatus that detects a movement of anoperation section inside an opening formed on a casing by a slideresistance. Alternatively, the present invention may be applied to anoptical input apparatus that calculates a movement amount and operationdirection of a finger of a user by irradiating light onto a semicircularoperation section provided at an upper portion of a casing and detectingreflected light. Alternatively, the present invention may be applied toan electronic apparatus including any of the input apparatuses describedabove (e.g., laptop PC including touchpad).

The present invention may be applied to a handheld apparatus thatincludes a display section, for example. In this case, an imagedisplayed on the display section is scrolled when the user moves a mainbody of the handheld apparatus. Alternatively, the user moves thepointer by moving the main body of the handheld apparatus. Examples ofthe handheld apparatus include a PDA (Personal Digital Assistance), acellular phone, a portable music player, and a digital camera.

The input apparatus 1 according to the above embodiments has transmittedinput information to the control apparatus 40 wirelessly. However, theinput information may be transmitted by wire.

In the above embodiments, the pointer 2 that moves on the screen inaccordance with the movement of the input apparatus 1 has beenrepresented as an image of an arrow. However, the image of the pointer 2is not limited to the arrow and may be a simple circle, square, or thelike, or a character image or any other images.

The above embodiments have described about the biaxial accelerationsensor unit and the biaxial angular velocity sensor unit. However, thepresent invention is not limited thereto, and the input apparatus 1 mayinclude, for example, acceleration sensors of three orthogonal axes andangular velocity sensors of three orthogonal axes, and even with onlyone of the above, the processing shown in the above embodiments can berealized. Alternatively, an embodiment in which the input apparatus 1includes a uniaxial acceleration sensor or a uniaxial angular velocitysensor is also conceivable. When provided with the uniaxial accelerationsensor or uniaxial angular velocity sensor, typically a screen on whicha plurality of GUIs as pointing targets of the pointer 2 displayed onthe screen 3 are arranged uniaxially is conceivable.

Alternatively, the input apparatus 1 may include a geomagnetic sensor,an image sensor, and the like instead of the acceleration sensors andthe angular velocity sensors.

The detection axes of each of the angular velocity sensor unit 15 andthe acceleration sensor unit 16 of the sensor unit 17 do not necessarilyneed to be mutually orthogonal like the X′ axis and the Y′ axisdescribed above. In this case, accelerations respectively projected inthe mutually-orthogonal axial directions can be obtained by acalculation that uses a trigonometric function. Similarly, angularvelocities about the mutually-orthogonal axes can be obtained by acalculation that uses the trigonometric function.

Descriptions have been given on the case where the X′ and Y′ detectionaxes of the angular velocity sensor unit 15 and the X′ and Y′ detectionaxes of the acceleration sensor unit 16 of the sensor unit 17 describedin the above embodiments match. However, those detection axes do notnecessarily need to match. For example, in a case where the angularvelocity sensor unit 15 and the acceleration sensor unit 16 are mountedon a substrate, the angular velocity sensor unit 15 and the accelerationsensor unit 16 may be mounted while being deviated a predeterminedrotation angle within a main surface of the substrate so that thedetection axes of the angular velocity sensor unit 15 and theacceleration sensor unit 16 do not match. In this case, accelerationsand angular velocities with respect to the respective axes can beobtained by a calculation that uses the trigonometric function.

In the above embodiments, the case where the input apparatus 1 isoperated 3-dimensionally has been described. However, the presentinvention is not limited thereto, and the input apparatus may beoperated while a part of the casing 10 is in contact with a table, forexample.

It should be understood by those skilled in the art that variousmodifications, combinations, sub-combinations and alterations may occurdepending on design requirements and other factors insofar as they arewithin the scope of the appended claims or the equivalents thereof.

What is claimed is:
 1. An information processing apparatus comprising:an input unit configured to receive a mode selection input from a user;a switching unit configured to switch between a pointing mode and ascroll mode based on the mode selection input; and a scroll control unitconfigured to scroll in a scroll direction in the scroll mode.
 2. Theinformation processing apparatus of claim 1, wherein the scroll controlunit is configured to restrict the scroll direction to a horizontaldirection based on movement of the user in three-dimensional space. 3.The information processing apparatus of claim 1, wherein the scrollcontrol unit is configured to restrict the scroll direction to avertical direction based on movement of the user in three-dimensionalspace.
 4. The information processing apparatus of claim 1, furthercomprising a direction weighting unit configured to determine a firstdirection weighting factor that restricts the scroll direction in afirst scroll direction based on movement of the user inthree-dimensional space.
 5. The information processing apparatus ofclaim 4, wherein the direction weighting unit is configured to determinea second direction weighting factor that restricts the scroll directionin a second scroll direction, different from the first scroll direction,based on movement of the user in three-dimensional space.
 6. Theinformation processing apparatus of claim 1, wherein the input unit isfurther configured to receive a movement input based on movement of theuser in three-dimensional space.
 7. The information processing apparatusof claim 6, wherein the scroll control unit is further configured torestrict the scroll direction based on the movement input received bythe input unit.
 8. An information processing method comprising:receiving, by an input unit, a mode selection input from a user;switching, by a switching unit, between a pointing mode and a scrollmode based on the mode selection input; and scrolling, by a scrollcontrol unit, in a scroll direction in the scroll mode.
 9. Theinformation processing method of claim 8, wherein scrolling includesrestricting the scroll direction to a horizontal direction based onmovement of the user in three-dimensional space.
 10. The informationprocessing method of claim 8, wherein scrolling includes restricting thescroll direction to a vertical direction based on movement of the userin three-dimensional space.
 11. The information processing method ofclaim 8, further comprising determining a first direction weightingfactor that restricts the scroll direction in a first scroll directionbased on movement of the user in three-dimensional space.
 12. Theinformation processing method of claim 11, further comprisingdetermining a second direction weighting factor that restricts thescroll direction in a second scroll direction, different from the firstscroll direction, based on movement of the user in three-dimensionalspace.
 13. The information processing method of claim 8, furthercomprising receiving, by the input unit, a movement input based onmovement of the user in three-dimensional space.
 14. The informationprocessing method of claim 13, wherein scrolling includes restrictingthe scroll direction based on the movement input received by the inputunit.
 15. An information processing apparatus comprising: an input unitconfigured to receive from a user a mode selection input indicative of apointing mode or a scroll mode and to receive a movement input based onmovement of the user in three-dimensional space; a switching unitconfigured to operate in the pointing mode or the scroll mode based onthe mode selection input; and a scroll control unit configured to scrollin a scroll direction in the scroll mode based on the movement inputreceived by the input unit.
 16. The information processing apparatus ofclaim 15, wherein the scroll control unit is configured to restrict thescroll direction to a horizontal direction based on the movement inputreceived by the input unit.
 17. The information processing apparatus ofclaim 15, wherein the scroll control unit is configured to restrict thescroll direction to a vertical direction based on the movement inputreceived by the input unit.
 18. The information processing apparatus ofclaim 15, further comprising a direction weighting unit configured todetermine a first direction weighting factor that restricts the scrolldirection in a first scroll direction based on the movement inputreceived by the input unit.
 19. The information processing apparatus ofclaim 18, wherein the direction weighting unit is configured todetermine a second direction weighting factor that restricts the scrolldirection in a second scroll direction, different from the first scrolldirection, based on the movement input received by the input unit. 20.The information processing apparatus of claim 15, wherein the scrollcontrol unit is further configured to restrict the scroll directionbased on the movement input received by the input unit.
 21. Aninformation processing apparatus comprising processing circuitryconfigured to: receive from a user a mode selection input indicative ofa pointing mode or a scroll mode and to receive a movement input basedon movement of the user in three-dimensional space; operate in thepointing mode or the scroll mode based on the mode selection input; andscroll in a scroll direction in the scroll mode based on the movementinput.
 22. A computer-readable storage device encoded withcomputer-executable instructions that, when executed by a processingapparatus, perform a method comprising: receiving from a user a modeselection input indicative of a pointing mode or a scroll mode andreceiving a movement input based on movement of the user inthree-dimensional space; operating in the pointing mode or the scrollmode based on the mode selection input; and scrolling in a scrolldirection in the scroll mode based on the movement input.